ARM platforms: supply per-PE target mask array
authorJeenu Viswambharan <[email protected]>
Fri, 22 Sep 2017 07:32:09 +0000 (08:32 +0100)
committerJeenu Viswambharan <[email protected]>
Mon, 16 Oct 2017 15:50:01 +0000 (16:50 +0100)
Call the GICv2 driver API to initialise per-PE target mask.

Change-Id: Idc7eb0d906a5379f4c05917af05c90613057ab97
Signed-off-by: Jeenu Viswambharan <[email protected]>
plat/arm/common/arm_gicv2.c

index 521fa8cd67770b6baa83424c9349d78dcae15827..6dd847b2fb1fc9261c0f3cb4ac145a989a7ca4f9 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, ARM Limited and Contributors. All rights reserved.
+ * Copyright (c) 2015-2017, ARM Limited and Contributors. All rights reserved.
  *
  * SPDX-License-Identifier: BSD-3-Clause
  */
@@ -28,11 +28,15 @@ static const unsigned int g0_interrupt_array[] = {
        PLAT_ARM_G0_IRQS
 };
 
+static unsigned int target_mask_array[PLATFORM_CORE_COUNT];
+
 static const gicv2_driver_data_t arm_gic_data = {
        .gicd_base = PLAT_ARM_GICD_BASE,
        .gicc_base = PLAT_ARM_GICC_BASE,
        .g0_interrupt_num = ARRAY_SIZE(g0_interrupt_array),
        .g0_interrupt_array = g0_interrupt_array,
+       .target_masks = target_mask_array,
+       .target_masks_num = ARRAY_SIZE(target_mask_array),
 };
 
 /******************************************************************************
@@ -72,6 +76,7 @@ void plat_arm_gic_cpuif_disable(void)
 void plat_arm_gic_pcpu_init(void)
 {
        gicv2_pcpu_distif_init();
+       gicv2_set_pe_target_mask(plat_my_core_pos());
 }
 
 /******************************************************************************